package com.coupon.vo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * Title:
 * Description:
 * <h1>结算信息对象定义</h1>
 * 包含：
 * 1、userId
 * 2、商品信息（列表）
 * 3、优惠卷列表
 * 4、结算结果金额
 * Version:1.0.0
 * @author Mr.Long
 * @date 2020/3/17 17:12
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SettlementInfo {

    //用户id
    private Long userId;

    //商品信息
    private List<GoodsInfo> goodsInfos;

    //优惠卷列表
    private List<CouponAndTemplateInfo> couponAndTemplateInfos;

    //是否使结算生效，即核销
    private Boolean employ;

    //结果结算金额
    private Double cost;


    /*
     * @Author Long
     * @Description 用户优惠卷和模板信息
     * @Date 17:15 2020/3/17
     * @Param
     * @return
     **/
    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public static class CouponAndTemplateInfo {
        //coupon的主键
        private Integer id;

        //优惠卷对应的模板对象
        private CouponTemplateSDK template;

    }

}
